[アップデート]AWS CLIとPython SDKで機械学習向けEC2インスタンスとS3とのデータの転送が高速化
データアナリティクス事業本部 機械学習チームの鈴木です。
Trn1・P4d・P5ファミリーの機械学習向けEC2インスタンスでAWS CLIとPython SDKを使うとき、S3との間でデータ転送を行う転送クライアントとして、自動でAWS Common Runtime(CRT)を選択して転送を高速化するアップデートがアナウンスされました。
発表された機能について
AWS CLIでの利用についてはAWS CLI v2のリファレンスに記載がありました。
AWS CLIでCRT転送クライアントは、現状S3とインスタンス間のファイルのアップロード・ダウンロードおよびS3オブジェクトの削除のみをサポートしていることが分かります。
また、以下のインスタンスに最適化されているということで、現状は該当の機械学習向けEC2インスタンスをターゲットとした機能といえますね。
p4d.24xlarge
p4de.24xlarge
p5.48xlarge
trn1n.32xlarge
trn1.32xlarge
学習データやモデルアーティファクトをS3とインスタンス間で転送する際に、オブジェクトのサイズが大きく時間がかかるという場合に効果が大きそうです。
Boto3には以下のクイックスタートに紹介がありました。
Boto3の場合は追加のモジュールとしてインストールする必要があるそうです。
# CRTありのバージョンのBoto3をインストールする pip install boto3[crt] # CRTなしのバージョンに戻す pip uninstall awscrt
詳しくはクイックスタートを参照ください。
最後に
AWS Common Runtime(CRT)クライアントを使ったAWS CLIとPython SDKでのインスタンス・S3バケット間のデータ転送高速化のアップデートをご紹介しました。
該当するインスタンスを使われている方はぜひガイドを参照の上、試してみて頂ければと思います。